

PL_TIME_DRIVEN: False.
Could you post your STA error? Even better if you could share your repository with the latest changes. Is it still https://github.com/AvalonSemiconductors/ws-submission-2025?

pdk_compat code in LibreLane. pdk_compat migrates old PDK variables to newer formats, however, for gf180mcu a number of variables were simply overwritten instead of checking whether they already existed. This makes it impossible to update the PDK variables to the newer format.
Therefore, I added some logic that checks whether the new variables already exist before setting their values.
This worked fine, except for SYNTH_CLK_DRIVING_CELL, which it is not a new variable, but its format changed. As this variables already existed in the PDK in the old format, it was not set to the new value, which led to the issue you saw.
As the project template uses a custom SDC file, this issue did not appear there.meta:
version: 2
flow: Classic
substituting_steps:
KLayout.DRC: null
Checker.KLayoutDRC: null
# DO CHANGE
DESIGN_NAME: user_project_example
VERILOG_FILES: dir::src/user_project_example.v
CLOCK_PERIOD: 20
DIE_AREA: [0, 0, 250, 250]
RUN_MAGIC_DRC: true
# Valid values are AREA 0-3 and DELAY 0-4
# DELAY 4 = fastest, but largest area
# AREA 3 = slowest, but smallest area
SYNTH_STRATEGY: DELAY 0
# DO NOT CHANGE
RUN_CTS: true
MAX_FANOUT_CONSTRAINT: 4
CLOCK_PORT: clk_i
VDD_NETS: ["VDD"]
GND_NETS: ["VSS"]
VERILOG_POWER_DEFINE: "USE_POWER_PINS"
RT_MAX_LAYER: Metal4
FP_PIN_ORDER_CFG: dir::pin_order.cfg
FP_PDN_MULTILAYER: false
FP_SIZING: absolute
PL_TIME_DRIVEN: FalseCLOCK_NET: clk_pad/Y
in librelane/config.yaml

SYNTH_STRATEGY, from the LibreLane docs: "Please note that there is no way to know which strategy is the best before trying them."
So it really depends on the design you implement.